package vip.xiaonuo.visitordevice.vo;

import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import java.util.Date;

@Data
@ApiModel(value = "提交访客并且审批通过请求参数")
public class VisitorApiSaveVO {
    @ApiModelProperty(value = "用户名")
    @NotBlank(message = "用户名不能为null")
    private String name;

    @ApiModelProperty(value = "性别 1男 2 女")
    private Integer sex;

    @ApiModelProperty(value = "手机号")
    @NotBlank(message = "手机号不能为null")
    private String tel;

    @ApiModelProperty(value = "人脸比对照片地址")
    @NotBlank(message = "人脸比对照片地址不能为null")
    private String photo;

    @ApiModelProperty(value = "身份证号")
//    @NotBlank(message = "身份证号不能为null")
    private String idCard;

    @ApiModelProperty(value = "卡号")
    private String icCard;

    @ApiModelProperty(value = "被访人")
    private String inviter;

    @ApiModelProperty(value = "被访人手机号码")
    private String inviterPhone;

    @ApiModelProperty(value = "被访人公司")
    @NotBlank(message = "被访人公司不能为null")
    private String inviterCompanyName;

    @ApiModelProperty(value = "访问的组织id")
    @NotNull(message = "访问的组织id不能为null")
    private Long companyId;

    @ApiModelProperty(value = "被访人id")
    private Long inviterId;

    @ApiModelProperty(value = "到访事由")
    private String visitReason;

    @ApiModelProperty(value = "到访备注")
    private String visitRemake;

    @ApiModelProperty(value = "开始访问时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @NotNull(message = "开始访问时间不能为null")
    private Date visitStartDate;

    @ApiModelProperty(value = "结束访问时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @NotNull(message = "结束访问时间不能为null")
    private Date visitEndDate;


    @ApiModelProperty(value = "设备id")
    @NotNull(message = "设备id不能为null")
    private Long visitorDeviceId;

    @ApiModelProperty(value = "车牌号码")
    private String carNum;

    @ApiModelProperty(value = "携带物品")
    private String carryItems;

    @ApiModelProperty(value = "质押证件")
    private String pledgeCertificate;

}
